package com.vietnam.power.dao;

import java.util.List;

import com.vietnam.power.domain.ProductGroupSearchCriteria;
import com.vietnam.power.domain.ProductSearchCriteria;
import com.vietnam.power.persitence.Product;
import com.vietnam.power.persitence.ProductGroup;

/**
 * @author DinhCuong
 * 
 */
public interface ProductDao {

	/**
	 * getProductGroupList
	 * 
	 * @return
	 */
	public List<ProductGroup> getProductGroupAsClientMenu();

	public List<Product> getAllProductList(ProductSearchCriteria psc, int page, int max);

	public int totalProduct(ProductSearchCriteria psc);
	
	public Product getProductById(int pId);
	
	//product group
	public List<ProductGroup> searchProductGroup(ProductGroupSearchCriteria s);
	
	public void createProductGroup(ProductGroup pg);
	
	public ProductGroup getProductGroupById(int id);
	
	public void updateProductGroup(ProductGroup pg);
	
	public void deleteProductGroup(ProductGroup pg);
	
	//product
	public void createProduct(Product p);
	
	public void updateProduct(Product p);
	
	public void deleteProduct(Product p);
	
	public List<Product> searchProduct(ProductSearchCriteria s);
}
